package cn.com.yx.ms.service;

import cn.com.yx.ms.application.web.ApiQueryBase;
import cn.com.yx.ms.domain.dbmodel.SysDict;
import cn.com.yx.ms.domain.sys.DictTreeModel;
import cn.yx.framework.view.ApiResult;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 字典管理
 * Created by lenovo on 2017/5/2.
 */
public interface IDictService {
    /**
     * 增加字典类型
     * @param sysDict
     * @return
     */
    ApiResult saveDictionary(SysDict sysDict);

    /**
     * 根据dictvalue删除数据
     * @param dictvalue
     * @return
     */
    int deleteDic(String dictvalue);

    /**
     * 根据dictvalue得到dictionary信息
     * @param dictvalue
     * @return
     */
    SysDict findByDictvalue(String dictvalue);

    /**
     * 修改字典
     * @param sysDict
     * @return
     */
    ApiResult updateDictionary(SysDict sysDict);

    /**
     * 增加字典数据
     * @param sysDict
     * @return
     */
   ApiResult saveDictionarydata(SysDict sysDict);

    /**
     * 找到所有的字典类型
     * @return
     */
   List<DictTreeModel> findAllDictionary(ApiQueryBase queryBase);

    /**
     * 查找两个表所有的数据
     * @param queryBase
     * @return
     */
   List<SysDict> findAllDinctionarydata(ApiQueryBase queryBase);

    /**
     * 根据字典类别ID查询字典值
     * @param dictid
     * @return
     */
    List<SysDict> findAllDictDatas(String dictid);

    /**
     * 根据id删除dictionarydat数据
     * @param id
     * @return
     */
   int delDictionarydata(String id);

    /**
     * 修改dictionarydata数据信息
     * @param sysDict
     * @return
     */
    ApiResult updateDictionarydata(SysDict sysDict);

    /**
     * 根据id查找dictdata数据
     * @param id
     * @return
     */
   SysDict findOneSysDictById(String id);

}
